What is a business Object?

A general definition, from the Object Management Group:

A business object is a representation of a thing active in the business domain, including at least its business name and definition, attributes, behavior, and relationships. A business object may represent, for example, a person, place or concept. The representation may be in a natural language, a modeling language, or a programming language.

An iMIS-specific definition, in terms of the Business Object Designer:

A business object is an iMIS system construct representing the data elements and business rules of a business concept like a contact; it is implemented using a combination of business rules, a schema definition that describes the data structures of the object’s properties, and a database view.

These are the basic elements of an iMIS business object:

■    Properties – attributes of the object (typically map to database columns). For example, Contact.LastName

■    Branches – used to provide inheritance-like functionality for similar objects – i.e., objects similar enough to be represented within a single object definition.

How is a business object used?

Business objects are used throughout the iMIS application to model business concepts and rules. They represent a database table or tables, and can add additional logic to operations performed on those tables. Business objects allow for runtime customization of iMIS behavior without access to source code.

A business object is an iMIS system construct representing the data elements and business rules of a business concept, like a contact. It is implemented using a combination of business rules, a schema definition that describes the data structures of the object's properties, and a database view. Business objects are behind all of the controls within the iMIS database. 

These objects are more than just the tables where data is stored.  They let you present data from within the database in a way that is user friendly and used by queries, windows, and other objects within iMIS.

How does a business object work?

After a business object is defined using BOD, its definition is stored and made available to the runtime environment.

When an instance of a business object is created (instantiated), the business object definition is used to create an in-memory table structure (a .NET DataSet). This structure stores all data related to the instance of the object.

As the instance of the business object is changed, changes are made to the in-memory structure. Changes are not written to the database until an explicit commit is performed.